home *** CD-ROM | disk | FTP | other *** search
/ Aminet 15 / Aminet 15 - Nov 1996.iso / Aminet / comm / fido / fnews7.lzh / fido737.nws < prev    next >
Text File  |  1990-09-09  |  45KB  |  907 lines

  1.      Volume 7, Number 37                             10 September 1990
  2.      +---------------------------------------------------------------+
  3.      |                                                  _            |
  4.      |                                                 /  \          |
  5.      |                                                /|oo \         |
  6.      |        - FidoNews -                           (_|  /_)        |
  7.      |                                                _`@/_ \    _   |
  8.      |         FidoNet (r)                           |     | \   \\  |
  9.      |  International BBS Network                    | (*) |  \   )) |
  10.      |         Newsletter               ______       |__U__| /  \//  |
  11.      |                                 / FIDO \       _//|| _\   /   |
  12.      |                                (________)     (_/(_|(____/    |
  13.      |                                                     (jm)      |
  14.      +---------------------------------------------------------------+
  15.      Editor in Chief:                                  Vince Perriello
  16.      Editors Emeritii:                    Thom Henderson,  Dale Lovell
  17.      Chief Procrastinator Emeritus:                       Tom Jennings
  18.      
  19.      Copyright 1990, Fido Software.  All rights reserved.  Duplication
  20.      and/or distribution permitted  for  noncommercial  purposes only.
  21.      For use in other circumstances, please  contact  Fido Software.
  22.      
  23.      FidoNews  is  published  weekly  by  the  System Operators of the
  24.      FidoNet  (r)  International  BBS Network.  It is a compilation of
  25.      individual articles  contributed  by  their authors or authorized
  26.      agents of the  authors.    The  contribution  of articles to this
  27.      compilation does not diminish the rights of the authors. 
  28.      
  29.      You  are  encouraged   to  submit  articles  for  publication  in
  30.      FidoNews.  Article submission standards are contained in the file
  31.      ARTSPEC.DOC, available from node 1:1/1.    1:1/1  is a Continuous
  32.      Mail system, available for network mail 24 hours a day.
  33.      
  34.      Fido and  FidoNet  are  registered  trademarks of Tom Jennings of
  35.      Fido Software, Box  77731,  San  Francisco  CA 94107, USA and are
  36.      used with permission.
  37.      
  38.      Opinions expressed in  FidoNews articles are those of the authors
  39.      and are not necessarily  those of the Editor or of Fido Software.
  40.      Most articles are unsolicited.   Our  policy  is to publish every
  41.      responsible submission received.
  42.  
  43.  
  44.                         Table of Contents
  45.      1. ARTICLES  .................................................  1
  46.         FidoNet Routing  ..........................................  1
  47.      2. LATEST VERSIONS  .......................................... 13
  48.         Latest Software Versions  ................................. 13
  49.      3. NOTICES  .................................................. 16
  50.         The Interrupt Stack  ...................................... 16
  51.      FidoNews 7-37                Page 1                   10 Sep 1990
  52.  
  53.  
  54.      =================================================================
  55.                                  ARTICLES
  56.      =================================================================
  57.  
  58.  
  59.      [This series of articles, which I am printing in its entirety
  60.      in this week's FidoNews, was written by Ben Baker to describe
  61.      the routing capability of Fido. To this day, much of what Ben
  62.      described here works the same way on nearly all FidoNet s/w.
  63.  
  64.      So this isn't just history you're reading here. You'll be
  65.      learning how to operate your system better. -- The Editor.]
  66.  
  67.  
  68.                     FidoNet Route Files Explained
  69.                  Part 1 -- The Many Faces of FidoNet
  70.  
  71.                       by Ben Baker, Fido 100/76
  72.  
  73.           There  is  no  aspect  of FidoNet more universally mis-
  74.      understood than routing.  It is the  intent  of  this  foru-
  75.      part series to clear some of the fog.
  76.  
  77.           The   justification  for  nets  and  routing  has  been
  78.      discussed many times and will NOT be  discussed again  here.
  79.      Given  that  routing  is  good,  how is it done?  What's the
  80.      meaning of the various statements that go into route  files?
  81.      Indeed, what's the meaning of route files?
  82.  
  83.           Let's first take a look at "the network." But how do we
  84.      do that?  In reality, there is no "the network." FidoNet  is
  85.      a  different  thing when viewed by each different Fido!  The
  86.      only formal definition of FidoNet is the node list,  and  it
  87.      serves  as  an  adaquate  view  of  "the  network"  for most
  88.      independent Fidos but only the members of some nets.
  89.  
  90.           Consider  the  hypothetical  node,  Fido 21/7.  He's an
  91.      independent member of a "Region." To him, "the network" is a
  92.      couple  of  hundred other independent nodes to whom he sends
  93.      messages directly and another couple of hundred to which  he
  94.      has  access  through  36  defined  "Hosts." If he receives a
  95.      message not addressed to his node, his  Fido  "orphans"  it.
  96.      He has no intention of forwarding someone else's mail.  They
  97.      can pay their own phone bills!  When he sends a  message  to
  98.      18/3,  Fido  knows  (from  the  node  list)  that is another
  99.      independent and sends the message direct.  When he  sends  a
  100.      message to 100/76, Fido knows (from the node list) that is a
  101.      member of net 100 and sends it to 100/0.  Fido 21/7 executes
  102.      only  schedule A during the national mail window.  He has no
  103.      use for ANY route files.
  104.  
  105.      FidoNews 7-37                Page 2                   10 Sep 1990
  106.  
  107.  
  108.           Another hypothetical node, Fido 201/4 is a member of an
  109.      "inbound  only"  net.   Since  the  sysop  has  used the '4'
  110.      command properly, Fido knows he is a member of net  201  and
  111.      will  treat  other  members  of that net as though they were
  112.      independent nodes.  When he sends a message to  201/5,  Fido
  113.      will  send it direct and not to 201/0.  Messages headed out-
  114.      side net 201 will be handled for 201/4 just as they were for
  115.      21/7.   Fido  201/4  executes  two  schedules,  A during the
  116.      national window followed immediatly by B when he  just  sits
  117.      quietly  and  waits  for  201/0  to  send  him  any  mail he
  118.      received.  He has no use for ANY route files.
  119.  
  120.           Everyone   else  has  a  view  of  "the  network"  more
  121.      complicated than Fido can discover from just the node  list.
  122.      If  you're a Southern California Hub, or a local node in the
  123.      New York Megalopolis, or maybe the host of a modest  network
  124.      in  Memphis  "the  network"  looks  different to you than to
  125.      other sysops.  It is the function of route files  to  modify
  126.      Fido's view of "the network" to conform to yours.
  127.  
  128.           If your Fido is executing any mail event and any  other
  129.      Fido calls it up and offers it a mail packet, your Fido will
  130.      graciously receive that packet and at the end  of  the  mail
  131.      event,  he will unpack it into messages.  These actions have
  132.      nothing whatever to do with route files!
  133.  
  134.           Reread  that last paragraph two or three times until it
  135.      sinks in.  It is a very important, very misunderstood point.
  136.      Route  files  do  not and cannot control the way you receive
  137.      mail.  ROUTE FILES CONTROL ONLY THE  WAY  YOU  SEND  MAIL!!!
  138.      After all, that's when you're paying the phone bill.
  139.  
  140.           Furthermore,  what  you  say  in ROUTE.B has absolutely
  141.      nothing to do with how Fido behaves in schedule C.   I  will
  142.      come back to this point later.
  143.  
  144.           Ever since we first began routing FidoNet  messages  to
  145.      places  other than their final destination, route files have
  146.      used three basic commands to mold Fido's view of FidoNet  to
  147.      correspond  with  your  view.   In  part  2  we will look at
  148.      SCHEDULE, ROUTE-TO and ACCEPT-FROM and  see  just  how  they
  149.      influence Fido.
  150.  
  151.           Part  3  will  examine  a  bevy of new routing commands
  152.      available with Fido V11 and see how they have made automatic
  153.      distribution at last possible.
  154.  
  155.           LISTGEN  V2  is capable of generating route files auto-
  156.      matically.  Part 4 will discuss how ROUTE.CTL statements map
  157.      to route file commands.
  158.  
  159.      FidoNews 7-37                Page 3                   10 Sep 1990
  160.  
  161.  
  162.           Stay  with  me  for the next few weeks and maybe we can
  163.      burn off the fog and find a bright sky, a calm sea and clear
  164.      sailing.   (And  don't  throw  away your newsletters, you'll
  165.      want to refer back from time to time.)
  166.  
  167.      ------------------------------------------------------------
  168.  
  169.  
  170.  
  171.                     FidoNet Route Files Explained
  172.                      Part  2 -- In the Beginning
  173.  
  174.                       by Ben Baker, Fido 100/76
  175.  
  176.           From the time he first began "routing"  messages,  Fido
  177.      has  used  "route  files"  to tell him what messages to send
  178.      where when.   Three  basic  route  file  commands  do  this;
  179.      SCHEDULE  aka SEND-TO, ROUTE-TO and ACCEPT-FROM.  This week,
  180.      we'll look at these commands in depth.
  181.  
  182.           Before  going  farther,  I  need  to define a couple of
  183.      terms.  A "target" is a node to which your Fido will connect
  184.      and directly send a message.  An "addressee" is the ultimate
  185.      destination node  for  a  message.   This  is  an  important
  186.      distinction.   Because  of  routing,  the  addressee and the
  187.      target for a particular message are often different nodes.
  188.  
  189.           A "packet" is a collection of messages all to  be  sent
  190.      to  a single target (though perhaps several addressees).  At
  191.      the beginning of each schedule Fido builds all  the  packets
  192.      he will be permitted to send during that schedule.
  193.  
  194.           Now, let's take a look at the three basic commands that
  195.      may  appear  in  a  route file, and see how each of them can
  196.      modify Fido's behavior.
  197.  
  198.      SCHEDULE <tag> <target list>         or
  199.      SEND-TO <target list>
  200.  
  201.           These commands are equivalent.  They tell Fido  "During
  202.      this  schedule,  you  may  build  packets  for any target in
  203.      <target list>.  Include all messages to different addressees
  204.      which  may  be routed to these targets.  Do not consider any
  205.      outgoing messages which cannot  be  sent  to  one  of  these
  206.      targets."  Unless  there  is  an  ACCEPT-FROM statement (see
  207.      below) only messages originating on your Fido qualify to  go
  208.      into  packets.   If  <target list> is empty (and this is NOT
  209.      schedule A), Fido will not build any packets.  If he doesn't
  210.      build  any  packets he will not send any mail, even if he is
  211.      POLLed (see next week).
  212.  
  213.      FidoNews 7-37                Page 4                   10 Sep 1990
  214.  
  215.  
  216.      ROUTE-TO <target> <addressee list>
  217.  
  218.           This  command  will  override  any  node  list  implied
  219.      routing  affecting  these nodes.  It tells Fido "If <target>
  220.      is in <target list> and there are outgoing messages for  any
  221.      nodes  in  <addressee list>, put them in <target>'s packet."
  222.      If <target> is not in  <target  list>  you  blew  it.   It's
  223.      almost,  but  not quite a "no operation." No packets will be
  224.      built for nodes in <addressee list>, even  if  they  are  in
  225.      <target  list>!   Don't  route messages to a <target> that's
  226.      not in the <target list> for this schedule.
  227.  
  228.           By  the  way,  a bug in an earlier version of Fido pre-
  229.      vented messages to <target> from being sent  unless  he  was
  230.      also  in  <addressee  list>.   I don't know if that has been
  231.      corrected, but it's  still  good  general  practice  to  put
  232.      <target> in <addressee list>.
  233.  
  234.      ACCEPT-FROM <originating list>
  235.  
  236.           Normally, Fido only  sends  mail  originating  on  your
  237.      board.   If  you  receive  a  message  originating  on A and
  238.      addressed to B, without this statement, your Fido  will  not
  239.      attempt  to  send  it  along to B.  Instead, he will mark it
  240.      "orphan" to give you an indication that  he  had  a  problem
  241.      with  it and otherwise ignore it.  This statement in a route
  242.      file tells Fido "When you build packets,  if  you  find  any
  243.      messages from any nodes in <originating list>, treat them as
  244.      if  they  originated  here.   In  other  words  FORWARD  any
  245.      messages  from  the nodes in <originating list> that you can
  246.      get into packets FOR THIS SCHEDULE's <target list>."
  247.  
  248.           I actually suggested this verb for this action and have
  249.      regretted  it  ever  since!  It's a misnomer.  A better verb
  250.      might be "FORWARD-FOR" but hindsight is  always  20-20.   It
  251.      really  means  "Accept,  for  forwarding, only messages from
  252.      these guys."  It's  designed  to  prevent  you  from  paying
  253.      someone else's phone costs without prior arrangement.
  254.  
  255.           So  where  do  you  put  this  statement?  Remember two
  256.      important points I've  mentioned  before.   1)  Route  files
  257.      affect  how  you  SEND  mail,  not how you receive it.  2) A
  258.      particular route file affects only  the  schedule  with  the
  259.      matching  <tag>.   Consider  Fido  202/0, a hypothetical bi-
  260.      directional host.  He executes three schedules  each  night.
  261.      During  schedule  B, before the national window, he collects
  262.      outgoing mail from his locals.  During schedule C  he  sends
  263.      mail  from  himself  and  his  locals  to  "the network" and
  264.      receives mail for himself and his locals from it.   Then  in
  265.      schedule  D,  after  the national window, he distributes the
  266.      mail he received for his locals.
  267.  
  268.      FidoNews 7-37                Page 5                   10 Sep 1990
  269.  
  270.  
  271.           ROUTE.B  needs  neither  a <target list> nor an ACCEPT-
  272.      FROM statement.  Indeed, he doesn't really need any  ROUTE.B
  273.      file  at  all  because  HE  ISN'T  SENDING  ANY  MAIL DURING
  274.      SCHEDULE B.
  275.  
  276.           ROUTE.C  has  the national net excluding 202/0's locals
  277.      in its <target list>.  It also has  "ACCEPT-FROM  1,  2,  3,
  278.      (all  locals)."  Now let's say that 202/3 received a message
  279.      from 125/1 last night, but it wasn't delivered because 202/3
  280.      was   down.   The  message  is  still  here.   Won't  it  be
  281.      "orphaned" because 125/1 isn't in the ACCEPT-FROM list?  NO!
  282.      Because  202/3 isn't in the <target list>, the message won't
  283.      even be considered DURING THIS SCHEDULE.
  284.  
  285.           ROUTE.D has all the nodes in net  202  in  the  <target
  286.      list>,  and  an  "ACCEPT-FROM ALL" statement.  Now the fore-
  287.      going message will be processed correctly and  forwarded  to
  288.      202/3.
  289.  
  290.           Now let's say that 100/76 tries to forward a message to
  291.      Jakarta through 202/0.  202/0 cannot refuse delivery of  the
  292.      offending  message,  so  there  it  sits  in  his mail area.
  293.      During schedule B, he ignores all outgoing mail  because  he
  294.      doesn't  have a <target list>.  During schedule C Jakarta is
  295.      in his <target list>, but 100/76 is not in his  <originating
  296.      list>, so the message is orphaned.  During schedule D 100/76
  297.      IS in the <originating list>, but  Jakarta  is  not  in  the
  298.      <target list> so the message is again ignored.
  299.  
  300.           Make  no  mistake,  if  Jakarta had been in the <target
  301.      list> in schedule D, the message would have been sent,  even
  302.      though  it  had  been  marked  an  orphan  during schedule C
  303.      (provided, of course that a connection  could  be  made  and
  304.      Jakarta  happened  to  be  in a mail schedule at that time).
  305.      This means that if messages are orphaned because  of  errors
  306.      in  your  routing  files, the routing files can be corrected
  307.      and the messages can still be sent.  The orphan flag is  NOT
  308.      a dead end!
  309.  
  310.           A  similar kind of bug existed (and may still;  I don't
  311.      know) with ACCEPT-FROM as with ROUTE-TO (above).  If a route
  312.      file  contains  an ACCEPT-FROM statement, make sure your own
  313.      node is in the <originating list>.  (The first time  I  used
  314.      this   statement,   I  forwarded  a  lot  of  messages,  but
  315.      "orphaned" my own messages!)
  316.  
  317.           Well, that's how routing is  achieved.   Remember,  all
  318.      these  statements  control  out-going mail.  You can receive
  319.      mail even if you don't have any route files!
  320.  
  321.           A final point on routing.  If a message says it  has  a
  322.      file  attached (even if the file doesn't exist) all bets are
  323.      off.  Routing is suspended and  the  message  will  be  sent
  324.      direct  from  the  originator  to  the  addressee.  Fido has
  325.      several built-in safeguards to prevent you  from  forwarding
  326.      someone  else's  files,  or  forwarding  your  files through
  327.      FidoNews 7-37                Page 6                   10 Sep 1990
  328.  
  329.  
  330.      someone else for that matter.
  331.  
  332.           Next week we'll take a close look at the goodies TJ has
  333.      provided in version 11 and see how they are making automatic
  334.      node list distribution at long last a reality.
  335.  
  336.      ------------------------------------------------------------
  337.  
  338.  
  339.  
  340.                     FidoNet Route Files Explained
  341.                Part 3 -- Keep the Old, Ring In the New
  342.  
  343.                       by Ben Baker, Fido 100/76
  344.  
  345.           Last  week  we  looked  at the basic routing statements
  346.      that have been with us since version  7  or  so.  Now  let's
  347.      look at what's been added in version 11.
  348.  
  349.           Please refer back to last weeks  definitions.   I  con-
  350.      tinue to use them as defined.
  351.  
  352.      RECV-ONLY
  353.  
  354.           This tells Fido "Go ahead and  build  packets  for  any
  355.      targets  in  the SCHEDULE command's <target list>, but DON'T
  356.      ATTEMPT TO CALL ANYBODY.  If any targets happen to  call  in
  357.      for  any  reason, try to give them their packets before they
  358.      get away."
  359.  
  360.           There  MUST  be  a  <target list> for this statement to
  361.      mean anything.  It is not  intended  for  normally  "receive
  362.      only"  schedules  like 202/0's collection schedule (see last
  363.      week).  Instead, it  prevents  you  from  originating  calls
  364.      during  schedules  when you are trying to SEND mail.  (Route
  365.      files control how you send mail, not how  you  receive  it.)
  366.      You  are  really  trying  to  send  mail  on the other guy's
  367.      nickel, but as you will see, he has  to  cooperate  in  that
  368.      venture.
  369.  
  370.           This  statement  might be used by the locals during the
  371.      collection schedule in a large, busy  net.   Collisions  are
  372.      avoided  because  there's  only one node, the outbound host,
  373.      placing calls.  He POLLs (see below) the  locals  for  their
  374.      outgoing traffic.
  375.  
  376.      HOLD <hold target list>
  377.  
  378.           "OK, Fido, build packets for  targets  in  the  <target
  379.      list>,  but  don't  attempt  to actually call any targets in
  380.      <hold target list>." This is a limited "RECV-ONLY"  command.
  381.      Any  packets  for  targets not in <hold target list> will be
  382.      sent normally (if they haven't been picked up), but  packets
  383.      for <hold target list> have to be "picked up."
  384.  
  385.      FidoNews 7-37                Page 7                   10 Sep 1990
  386.  
  387.  
  388.           There's  a  hidden  gimmick  here  that  bears  further
  389.      exploration.   Ken  Kaplan  (Fido  100/22  AKA  1/0)  is the
  390.      original  source  in  the  national  nodelist   distribution
  391.      system.   Regional  coordinators  call his Fido each week to
  392.      pick up copies of the latest nodelist.  The route  file  for
  393.      his  national  window contains the statement "HOLD <regional
  394.      coordinator list>."  Fido  will  not  attempt  to  send  any
  395.      packets  targetted  for  a  regional coordinator.  Does this
  396.      mean  that  he  can't  send   "normal"   messages   to   the
  397.      coordinators?   Not  at  all.  Because he is a member of net
  398.      100, all his "normal" messages, including those addressed to
  399.      the  coordinators, wind up in a packet targetted for 100/10,
  400.      the outbound host.  Since 100/10 is not in the <hold  target
  401.      list>,  that  packet  is sent and the messages go out.  HOLD
  402.      APPLIES TO THE TARGETS OF PACKETS, NOT TO THE ADDRESSEES  OF
  403.      MESSAGES!   It  is  only  when  Ken  sends  messages  to the
  404.      coordinators with the nodelist (or other files) attached  to
  405.      them  that Fido builds packets targetted for them instead of
  406.      100/10.
  407.  
  408.           Does that mean that Ken  can't  send  the  coordinators
  409.      other files without waiting for them to pick them up?  Well,
  410.      yes and no.  Because of the HOLD  statement,  he  can't  say
  411.      send  FIDO_IBM.EXE to 14/61 (see PICK-UP below for why 14/61
  412.      and not  14/0).   But  he  can  use  another  gimmick.   The
  413.      coordinators have dual identities (set by the '4' command of
  414.      Fido) and he can certainly send a file  to  14/0.   Fido  is
  415.      smart,  but so smart he'll notice that 14/0 and 14/61 happen
  416.      to have the same phone number.  He'll send  the  packet  for
  417.      14/0 and hold the one for 14/61.  By the same token, if both
  418.      packets are still present when 14/61 calls  in,  he'll  only
  419.      pick up the the nodelist targetted for 14/61 and not the new
  420.      Fido targetted for 14/0.  (You can't have your cake and  eat
  421.      it too.)
  422.  
  423.      PICKUP <pickup target list>
  424.  
  425.           Whenever any other Fido calls your Fido for any reason,
  426.      your Fido looks to see if there is a  packet  targetted  for
  427.      him.  If there is, your Fido will try to deliver it then and
  428.      there and avoid making the phone call which you have to  pay
  429.      for.   Without this statement (or the next one) in his route
  430.      file, the other Fido will simply hang up on you, leaving you
  431.      with  a  phone call to make in order to deliver your packet.
  432.      This statement says to Fido  "If  you  happen  to  call  any
  433.      target in <pickup target list>, hang around to see if he has
  434.      mail for me."
  435.  
  436.           This  is  a  two-edged  sword.   It  can  speed up mail
  437.      exchange, but the Fido that places the call pays for it.  It
  438.      works  best  within a local net where the calls are all toll
  439.      free anyway.  In fact, it won't work at all  between  larger
  440.      nets  supported  by  distinct  inbound  and  outbound hosts.
  441.      Specifying "PICKUP 100/0" in your national  window  schedule
  442.      would  only get you messages originating on 100/0 (or 100/51
  443.      actually) with files attached.  Any other mail for you might
  444.      FidoNews 7-37                Page 8                   10 Sep 1990
  445.  
  446.  
  447.      be in a packet addressed to you, but on 100/10, the outbound
  448.      host, and that's not who you called.
  449.  
  450.           Even worse, let's say Tom Jennings is sending a file to
  451.      100/10 and wants to pick up any mail from St.  Louis for San
  452.      Francisco while he's at it.  He's the host of net  125,  and
  453.      that's  perfectly  legitimate,  right?   Wrong!  His primary
  454.      identity (the '4' command again) is  125/1  and  100/10  may
  455.      have  a  packet  for  125/0,  but he won't have a packet for
  456.      125/1.  This command deals at the packet/target  level  just
  457.      as  the  HOLD command does.  Furthermore, it deals with real
  458.      identities, not alternate identities.
  459.  
  460.           As I said, this is most useful within a local net,  and
  461.      that's where it probably should be applied.
  462.  
  463.      POLL <poll target list>
  464.  
  465.           This  tells Fido "Even if I don't have any mail for the
  466.      targets  in  <poll  target  list>  generate  empty   packets
  467.      addressed  to them so you have an excuse to call them.  Then
  468.      when you do call them, pick anything they have for me."
  469.  
  470.           "POLL <poll target list>" implies "PICKUP <poll  target
  471.      list>"  which  need not be specified.  This is the statement
  472.      an outbound host might use to poll his locals  or  hubs  for
  473.      outgoing traffic prior to national mail time.  Together with
  474.      the next statement, this method can be very efficient.
  475.  
  476.           The regional coordinators run a special  schedule  each
  477.      Saturday morning  during  the  national  mail  window.  It's
  478.      route  file  is  identical to their normal national schedule
  479.      route file except that it contains the statement "POLL 1/0."
  480.      That's how they  get  the  nodelist  for  subsequent  redis-
  481.      tribution.
  482.  
  483.           As I see it, POLL has a lot more uses than PICKUP.
  484.  
  485.      SEND-ONLY
  486.  
  487.           This  one  is  mainly for outbound hosts.  It says "I'm
  488.      not expecting any mail during this schedule, so  don't  wait
  489.      the  normal  one  or  two  minutes for incomming calls after
  490.      making an outgoing call.  As soon as you  finish  one,  dial
  491.      another until all packets have been sent."
  492.  
  493.           As  I  said  above,  this  can  be  very efficient, but
  494.      there's a problem you need to be aware of.  Fido will make a
  495.      maximum of 30 attempts without connect to send a packet to a
  496.      particular target.  If you have only one packet addressed to
  497.      a busy target, Fido would normally take about an hour to use
  498.      up 30 attempts, but in SEND-ONLY  mode  he  can  attempt  30
  499.      calls  in  about  20 minutes!  If you have a Courier and are
  500.      running it  in  "X4"  response  code  mode,  he'll  make  30
  501.      attempts  in 10 to 15 minutes.  (The Courier doesn't waste a
  502.      lot of time in "fast-dial, busy-detect" mode.)
  503.      FidoNews 7-37                Page 9                   10 Sep 1990
  504.  
  505.  
  506.           If you're an outbound host and want  to  try  SEND-ONLY
  507.      during  the  national  window,  you  risk using up your call
  508.      attempts while  your  target  is  busiest,  then  when  he's
  509.      quieted  down and you could get through, you've given up!  I
  510.      suggest you break your national time into two schedules, and
  511.      only  use  SEND-ONLY during the last 20 minutes or so of the
  512.      national window.
  513.  
  514.           On  the  other  hand,  polling your locals or hubs is a
  515.      different matter.  They should be in RECV-ONLY mode and  you
  516.      can  expect  every  call to connect the first try.  The call
  517.      attempt limit doesn't apply to this situation and the  SEND-
  518.      ONLY  command  should  be used to shorten the time needed to
  519.      POLL everyone.
  520.  
  521.      NO-ROUTE <addressee list>
  522.  
  523.           This command tells Fido "Do not send messages addressed
  524.      to these nodes anywhere but to the addressed  nodes.   Treat
  525.      them  as though they have files attached, whether they do or
  526.      not."
  527.  
  528.           This lets you say things like Fido 100/76 (in Illinois)
  529.      might:
  530.  
  531.      SEND-TO 100/10        ; Outbound Host (in Missouri)
  532.      ROUTE-TO 100/10 ALL   ; Send everything to accross the river
  533.      NO-ROUTE 100/482      ; Except other Illinois traffic
  534.  
  535.           The  only  other  way to achieve this end is to list in
  536.      the ROUTE-TO command all 500 odd nodes whose messages should
  537.      be routed to 100/10, and that list changes every week!
  538.  
  539.           Now  you  should have a good handle on how the commands
  540.      used in ROUTE.<tag> control  how  Fido  SENDS  files  during
  541.      schedule  <tag>.   But sometimes these commands require very
  542.      long lists of node numbers which change from week to week as
  543.      the  node  list  changes.  LISTGEN 2 will generate the route
  544.      files automatically and  let  you  specify  the  long  lists
  545.      symbolically  in terms of nets, area codes, etc..  Next week
  546.      in  the  last  part  of  this  series,  we'll  see  how  the
  547.      statements  in  LISTGEN's  ROUTE.CTL  file correspond to the
  548.      commands in ROUTE.<tag>.
  549.  
  550.      ------------------------------------------------------------
  551.  
  552.  
  553.  
  554.                     FidoNet Route Files Explained
  555.                    Part 4 -- LISTGEN and ROUTE.CTL
  556.  
  557.      FidoNews 7-37                Page 10                  10 Sep 1990
  558.  
  559.  
  560.                       by Ben Baker, Fido 100/76
  561.  
  562.  
  563.           LISTGEN  Version  2  will  automatically generate route
  564.      files for you if you desire.  The advantage is that  LISTGEN
  565.      is driven by a control file, ROUTE.CTL, in which you specify
  566.      the statements necessary with symbolic parameters  that  you
  567.      define  in  terms  of  nets,  area  codes, etc..  A properly
  568.      designed ROUTE.CTL need only change when your routing  needs
  569.      change.  LISTGEN will continue to create correct route files
  570.      week after week as the nodelist changes.
  571.  
  572.           Before I begin, I'd like to do a quick  review  of  the
  573.      route file commands and their effect.
  574.  
  575.      SCHEDULE <tag> <list> or
  576.      SEND-TO <list>               Determines which nodes may have
  577.                                   packets build to SEND mail to.
  578.      ROUTE-TO <target> <list>     Directs that messages  to  par-
  579.                                   ticular  addressees  be SENT in
  580.                                   packets to another node.
  581.      ACCEPT-FROM <list>           Specifies  which   oritinators'
  582.                                   messages may be SENT.
  583.      RECV-ONLY                    States that packets may only be
  584.                                   SENT by being picked up.
  585.      HOLD <list>                  States that  packets  to  part-
  586.                                   icular  nodes  may only be SENT
  587.                                   by being picked up.
  588.      PICK-UP <list>               States that it is OK to receive
  589.                                   mail from particular nodes when
  590.                                   we originate calls to SEND them
  591.                                   packets.
  592.      POLL <list>                  Directs that packets (empty  if
  593.                                   necessary)   be  generated  and
  594.                                   SENT  to  particular  nodes  in
  595.                                   order to pick up mail.
  596.      SEND-ONLY                    States  that  calls may be made
  597.                                   rapid-fire  to  SEND  as   many
  598.                                   packets as possible.
  599.  
  600.           Note that each definition above includes the verb  SEND
  601.      or  SENT.   I  did that deliberately to emphasize that these
  602.      commands all control some aspect of sending mail.
  603.  
  604.           LISTGEN has been adaquately documented  and  I  do  not
  605.      intend  to re-document it here, but I would like to show you
  606.      how ROUTE.CTL  commands  map  to  the  ROUTE.<tag>  commands
  607.      covered above.
  608.  
  609.      SCHEDULE <tag> <target list>
  610.  
  611.      FidoNews 7-37                Page 11                  10 Sep 1990
  612.  
  613.  
  614.           When  LISTGEN  encounters  this command in ROUTE.CTL it
  615.      does two things.  First it closes any route file it  may  be
  616.      working  on  and  creates a new ROUTE.<tag> file for the new
  617.      <tag>.  Then it generates  a  SCHEDULE  statement  from  the
  618.      specifications   in   this  one  for  the  new  ROUTE.<tag>,
  619.      expanding any symbolic parameters to lists of nodes from the
  620.      nodelist.  In other words, it begins a new route file as you
  621.      would expect it to by defining the <target list>.
  622.  
  623.      FROM <accept list>
  624.  
  625.           This phrase, when encountered, generates an ACCEPT-FROM
  626.      statement.
  627.  
  628.      TO <addressee list> [ VIA <target> ]
  629.  
  630.           If  the VIA clause is present, this statement generates
  631.      a  "ROUTE-TO  <target>  <addressee  list>."  Successive   TO
  632.      phrases  without  VIA  clauses  accumulate  to make a larger
  633.      <addressee list> until a VIA  clause  IS  found.   Then  the
  634.      entire  list  is  routed to the <target>.  (I'm not entirely
  635.      happy with this "feature," but that's the way it works.)  If
  636.      no  VIA  clause  is  ever  found, the TO phrase generates no
  637.      output at all!  It  does  serve  as  documentation  in  your
  638.      ROUTE.CTL file, saying "I expect to be sending mail TO these
  639.      nodes in this schedule."
  640.  
  641.           All of the other route file  commands  discussed  above
  642.      map  one-for-one  in  the  same  format  from  ROUTE.CTL  to
  643.      ROUTE.<tag>.
  644.  
  645.           The big advantage in using LISTGEN is to be able to use
  646.      simple  symbols  which  it will translate into long lists of
  647.      nodes.  To illustrate, net 100 spans two area codes, 314  in
  648.      Missouri  and  618  in  Illinois.  To minimize the number of
  649.      toll calls placed accross the Mississippi, I serve as "Metro
  650.      East"  hub  to concentrate the Illinois traffic.  I have the
  651.      following statements (among others) in my ROUTE.CTL file:
  652.  
  653.      define Metro-East as Net-100 except Area-314 ; Area 618
  654.      define Outbound as 100/10
  655.      define World as all except Metro-East
  656.        *  *  *
  657.      FROM Metro-East TO World VIA Outbound
  658.  
  659.           Nodes may come and go, both in our net and  across  the
  660.      country,  and  these  statements  need  not change.  LISTGEN
  661.      interprets them week after week and builds the  right  route
  662.      files  every  time.   And in several months, if our outbound
  663.      host should change making it necessary to change  ROUTE.CTL,
  664.      I  can  look  at this and not have to say to myself "What on
  665.      earth was I trying to do here?" It's all pretty obvious.
  666.  
  667.      FidoNews 7-37                Page 12                  10 Sep 1990
  668.  
  669.  
  670.           Before I wrap it up, there are two important exceptions
  671.      to  the things I have said.  First, schedule A is special in
  672.      that the <target list> always is  the  entire  nodelist,  no
  673.      matter  what  ROUTE.A  says.  For that reason, if you do any
  674.      routing not defined by the node list, I recommend  that  you
  675.      DO  NOT  USE SCHEDULE A.  For all other schedules, Fido does
  676.      exactly what ROUTE.<tag> tells it to do  and  nothing  more.
  677.      And  second,  ROUTE.BBS is a special route file that affects
  678.      all schedules for which there are no ROUTE.<tag> files.  For
  679.      that  reason,  I recommend that you FORGET YOU EVER HEARD OF
  680.      ROUTE.BBS.  It'll cause more problems than it'll ever solve!
  681.  
  682.           So,  routing  can  get  pretty complex (just ask 'em in
  683.      Southern California), but it doesn't need to be  complicated
  684.      once  you  know  what the objective of each schedule is from
  685.      your point of view, and what your Fido needs to do  to  meet
  686.      those objectives.
  687.  
  688.           In  fact, it's pretty easy if you just remember the two
  689.      points I have been hammering at you since we began:
  690.  
  691.           1) Route files control the way you send  messages,  not
  692.      the  way you receive them.  Every command we discussed above
  693.      controls some aspect of sending messages.  And.  .  .
  694.  
  695.           2) A particular route file only  affects  the  schedule
  696.      with  the  matching  <tag>.   What you say in ROUTE.B has no
  697.      bearing whatever on  schedule  C.   Each  schedule  must  be
  698.      separately spelled out.
  699.  
  700.      -----------------------------------------------------------------
  701.      FidoNews 7-37                Page 13                  10 Sep 1990
  702.  
  703.  
  704.      =================================================================
  705.                               LATEST VERSIONS
  706.      =================================================================
  707.  
  708.                          Latest Software Versions
  709.  
  710.                               MS-DOS Systems
  711.                               --------------
  712.  
  713.                            Bulletin Board Software
  714.      Name        Version    Name        Version    Name       Version
  715.  
  716.      DMG            2.93    Phoenix         1.3    TAG           2.5f*
  717.      Fido            12s+   QuickBBS       2.64    TBBS           2.1
  718.      Lynx           1.30    RBBS          17.3A    TComm/TCommNet 3.4
  719.      Kitten         2.16    RBBSmail      17.3A    Telegard       2.5
  720.      Maximus        1.00    RemoteAccess  0.04a*   TPBoard        6.1
  721.      Opus           1.13+*  SLBBS          1.77*   Wildcat!      2.15
  722.      PCBoard        14.5*   Socrates       1.00    XBBS          1.13
  723.  
  724.      Network                Node List              Other
  725.      Mailers     Version    Utilities   Version    Utilities  Version
  726.  
  727.      BinkleyTerm    2.40*   EditNL         4.00    ARC            7.0*
  728.      D'Bridge       1.30    MakeNL         2.20    ARCAsim       2.30
  729.      Dutchie       2.90C    ParseList      1.30    ARCmail       2.07
  730.      FrontDoor     1.99c*   Prune          1.40    ConfMail      4.00
  731.      PRENM          1.47    SysNL          3.11    Crossnet      v1.5
  732.      SEAdog        4.51b    XlatList       2.90    EMM           2.02
  733.      TIMS      1.0(Mod8)*   XlaxDiff       2.35*   Gmail         2.05
  734.                             XlaxNode       2.35*   GROUP         2.16
  735.                                                    GUS           1.30
  736.                                                    InterPCB      1.31*
  737.                                                    LHARC         1.13
  738.                                                    MSG            4.1
  739.                                                    MSGED         2.00*
  740.                                                    PK[UN]ZIP     1.10
  741.                                                    QM             1.0
  742.                                                    QSORT         4.03
  743.                                                    Sirius        1.0w
  744.                                                    SLMAIL        1.35
  745.                                                    StarLink      1.01
  746.                                                    TagMail       2.20
  747.                                                    TCOMMail       2.2
  748.                                                    Telemail      1.27*
  749.                                                    TMail         1.15
  750.                                                    TPBNetEd       3.2
  751.                                                    TosScan       1.00
  752.                                                    UFGATE        1.03
  753.                                                    XRS           3.40
  754.                                                    ZmailQ        1.12*
  755.      FidoNews 7-37                Page 14                  10 Sep 1990
  756.  
  757.  
  758.                                  Macintosh
  759.                                  ---------
  760.  
  761.      Bulletin Board Software   Network Mailers     Other Utilities
  762.  
  763.      Name            Version   Name      Version   Name       Version
  764.  
  765.      Red Ryder Host  v2.1b10   Tabby         2.2   MacArc        0.04
  766.      Mansion            7.15   Copernicus   1.0d*  ArcMac         1.3
  767.      WWIV (Mac)          3.0                       StuffIt      1.6b1*
  768.      FBBS               0.91*                      TImport      1.331
  769.      Hermes             0.88*                      TExport       1.32
  770.                                                    Timestamp      1.6
  771.                                                    Tset           1.3
  772.                                                    Import         3.2
  773.                                                    Export        3.21
  774.                                                    Sundial        3.2
  775.                                                    PreStamp       3.2
  776.                                                    OriginatorII   2.0
  777.                                                    AreaFix        1.6
  778.                                                    Mantissa       3.21
  779.                                                    Zenith         1.5
  780.                                                    UNZIP        1.02b
  781.  
  782.                                    Amiga
  783.                                    -----
  784.  
  785.      Bulletin Board Software   Network Mailers     Other Utilities
  786.  
  787.      Name            Version   Name      Version   Name       Version
  788.  
  789.      Paragon            2.06+  BinkleyTerm  1.00   AmigArc       0.23
  790.                                TrapDoor     1.50*  AReceipt       1.5*
  791.                                WelMat       0.35   booz          1.01
  792.                                                    ConfMail      1.10
  793.                                                    ChameleonEdit 0.10
  794.                                                    ElectricHerald1.66*
  795.                                                    Lharc         1.10
  796.                                                    MessageFilter 1.52*
  797.                                                    oMMM         1.49b
  798.                                                    ParseLst      1.30
  799.                                                    PkAX          1.00
  800.                                                    PK[UN]ZIP     1.01
  801.                                                    PolyxAmy      2.02*
  802.                                                    RMB           1.30
  803.                                                    TrapList      1.12*
  804.                                                    UNzip         0.86
  805.                                                    Yuck!         1.61*
  806.                                                    Zoo           2.00
  807.  
  808.                                  Atari ST
  809.      FidoNews 7-37                Page 15                  10 Sep 1990
  810.  
  811.  
  812.                                  --------
  813.  
  814.      Bulletin Board Software   Network Mailer      Other Utilities
  815.  
  816.      Name            Version   Name      Version   Name       Version
  817.  
  818.      FIDOdoor/ST        1.5c*  BinkleyTerm 1.03g3  ConfMail      1.00
  819.      Pandora BBS       2.41c   The BOX     1.20    ParseList     1.30
  820.      QuickBBS/ST        0.40                       ARC           6.02*
  821.      GS Point           0.61                       LHARC         0.51
  822.                                                    LED ST        0.10*
  823.                                                    BYE           0.25*
  824.                                                    PKUNZIP       1.10
  825.                                                    MSGED        1.96S
  826.                                                    SRENUM         6.2
  827.                                                    Trenum        0.10
  828.                                                    OMMM          1.40
  829.  
  830.  
  831.                                 Archimedes
  832.                                 ----------
  833.  
  834.      BBS Software           Mailers                Utilities
  835.      Name        Version    Name        Version    Name       Version
  836.  
  837.      ARCbbs         1.44*   BinkleyTerm    2.03*   Unzip        2.1TH
  838.                                                    ARC           1.03
  839.                                                    !Spark       2.00d*
  840.  
  841.                                                    ParseLst      1.30
  842.                                                    BatchPacker   1.00*
  843.  
  844.  
  845.      + Netmail capable (does not require additional mailer software)
  846.      * Recently changed
  847.  
  848.      Utility authors:  Please help  keep  this  list  up  to  date  by
  849.      reporting  new  versions  to 1:1/1.  It is not our intent to list
  850.      all utilities here, only those which verge on necessity.
  851.  
  852.      -----------------------------------------------------------------
  853.      FidoNews 7-37                Page 16                  10 Sep 1990
  854.  
  855.  
  856.      =================================================================
  857.                                   NOTICES
  858.      =================================================================
  859.  
  860.                           The Interrupt Stack
  861.  
  862.  
  863.       5 Oct 1990
  864.         21st Anniversary of "Monty Python's Flying Circus"
  865.  
  866.       6 Nov 1990
  867.         First anniversary of Van Diepen Automatiseert, 2:500/28
  868.  
  869.      14 Nov 1990
  870.         Marco Maccaferri's 21rd Birthday. Send greetings to him at
  871.         2:332/16.0
  872.  
  873.       1 Jan 1991
  874.         Implementation of 7% Goods and Services Tax in Canada. Contact
  875.         Joe Lindstrom at 1:134/55 for a more colorful description.
  876.  
  877.      16 Feb 1991
  878.         Fifth anniversary of the introduction of Echomail, by Jeff Rush.
  879.  
  880.       7 Oct 1991
  881.         Area code  415  fragments.   Alameda and Contra Costa Counties
  882.         will  begin  using  area  code  510.   This includes  Oakland,
  883.         Concord, Berkeley  and  Hayward.    San  Francisco, San Mateo,
  884.         Marin, parts of  Santa Clara County, and the San Francisco Bay
  885.         Islands will retain area code 415.
  886.  
  887.       1 Feb 1992
  888.         Area  code 213 fragments.    Western,  coastal,  southern  and
  889.         eastern portions of Los Angeles  County  will begin using area
  890.         code 310.  This includes Los  Angeles  International  Airport,
  891.         West  Los  Angeles,  San  Pedro and Whittier.    Downtown  Los
  892.         Angeles  and  surrounding  communities  (such as Hollywood and
  893.         Montebello) will retain area code 213.
  894.  
  895.       1 Dec 1993
  896.         Tenth anniversary of Fido Version 1 release.
  897.  
  898.       5 Jun 1997
  899.         David Dodell's 40th Birthday
  900.  
  901.  
  902.      If you have something which you would like to see on this
  903.      calendar, please send a message to FidoNet node 1:1/1.
  904.  
  905.      -----------------------------------------------------------------
  906.  
  907.